﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace Brio.Framework.Operators
{
    public class MelodicSmoothingOperator : MusicalOperator
    {
        public MelodicSmoothingOperator(int individualNotePercentage) : base("Smoothing", 100, OperatorType.Haploid)
        {
            this.individualNotePercentage = individualNotePercentage;
        }

        private int individualNotePercentage;

        public override void Apply(MotifChromosome chromo, IntervalRelationshipTable intervalRelationships)
        {
            chromo.Staff.MelodicSmoothing(individualNotePercentage, intervalRelationships);
        }

        public override void Apply(MotifChromosome chromo)
        {
            // UNSUPPORTED
        }

        public override void Apply(MotifChromosome doner, MotifChromosome reciever)
        {
            // UNSUPPORTED
        }

        public override void Apply(MotifChromosome chromo, TechniqueCollection techniqueCollection)
        {
            // UNSUPPORTED
        }


    }
}
